iT邦幫忙

2024 iThome 鐵人賽

DAY 13
0
Kubernetes

從零到一: 使用Spring Boot、Kubernetes 和 Istio實現微服務架構系列 第 13

Day 13: 使用Spring Boot、Kubernetes 和 Istio實現微服務架構-用Docker啟動Spring Boot專案

  • 分享至 

  • xImage
  •  

準備 Spring Boot 專案
假設你已經有一個簡單的 Spring Boot 專案,並且其目錄結構大致如下:

my-springboot-app/
├── src/
├── pom.xml (如果是 Maven)
├── build.gradle (如果是 Gradle)
└── ...

步驟二:新增 Dockerfile

在專案根目錄下創建一個名為 Dockerfile 的檔案,並加入以下內容:

使用官方的 OpenJDK 基本映像檔

FROM openjdk:17-jdk-alpine

設定工作目錄

WORKDIR /app

複製並打包好的 JAR 檔案到映像檔內的 /app 目錄

COPY target/my-springboot-app.jar /app/my-springboot-app.jar

定義應用程序如何啟動

ENTRYPOINT ["java", "-jar", "/app/my-springboot-app.jar"]

Expose 8080 port

EXPOSE 8080

注意: my-springboot-app.jar 是你打包後的 JAR 檔案名稱,請根據實際情況調整。

步驟三:打包 Spring Boot 應用
若你使用 Maven,可以在專案目錄下執行以下命令來打包專案:

mvn clean package

這會在 target/ 目錄下生成一個可執行的 JAR 檔案,例如:my-springboot-app.jar。

步驟四:使用 Docker 構建映像檔
在專案根目錄下執行以下命令來構建 Docker 映像檔:

docker build -t my-springboot-app .

這會根據 Dockerfile 來構建映像檔,並命名為 my-springboot-app。

步驟五:運行 Docker 容器
構建完映像檔後,可以使用以下命令來運行 Spring Boot 應用:

docker run -p 8080:8080 my-springboot-app

這會啟動 Docker 容器,並將本機的 8080 埠映射到容器內部的 8080 埠,然後你可以通過 http://localhost:8080 來訪問你的 Spring Boot 應用。

步驟六:驗證
開啟瀏覽器,輸入 http://localhost:8080,如果應用成功啟動,你應該可以看到 Spring Boot 應用的內容。

小結
這個教學展示了如何將一個 Spring Boot 應用打包成 Docker 容器並啟動。你可以根據需要進一步擴展,例如使用 Docker Compose 來配置資料庫或其他服務。


上一篇
Day 12 使用Spring Boot、Kubernetes 和 Istio實現微服務架構 - Docker Ubuntu安裝
下一篇
Day 14: 使用Spring Boot、Kubernetes 和 Istio實現微服務架構 - dockerfile 指令介紹
系列文
從零到一: 使用Spring Boot、Kubernetes 和 Istio實現微服務架構30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言